1. Field of the Invention
The invention relates to telecommunications, and in particular, to systems, methods, and software for predetermining jitter buffer settings in telecommunication networks.
2. Description of the Prior Art
Jitter buffers are commonly located at the end points of most packet communication paths used for real-time communications. For example, packet voice calls often times originate from a session initiation protocol (SIP) phone running in a packet network and terminate to a plain old telephone service (POTS) phone located on a circuit switched network. Typically, a media gateway is located at the border between the packet network and the circuit switched network to interwork the packet and TDM traffic. In such an example, the entire call path would extend from a SIP phone to a TDM phone. However, the packet communication path would be considered the portion of the call path between the SIP phone and the gateway. In such a case, both the SIP phone and the gateway would be considered end points of the packet communication path. Conventionally, end points employ jitter buffers to reduce the effects of variable latency or delay in the packet communication path.
Given the live nature of real-time applications, jitter buffer operations have a large impact on the quality of real-time applications. For example, an end user could experience either a gap in the operation of or a complete cessation of a real-time application as a result of packet jitter. In addition, jitter buffers can be static or dynamic. Static jitter buffers are configured with a particular size that does not change during operation. When a static jitter buffer becomes congested, packets are simply dropped. Dynamic jitter buffers can be automatically reconfigured to accommodate higher traffic patterns. Dynamic jitter buffers are sometimes referred to as adaptive jitter buffers.
Unfortunately, dynamic current jitter buffers are adapted after the commencement of real-time session traffic. This is problematic because a jitter buffer that is not optimally configured during the initial stages of a real-time session will cause session disruptions, such as session gaps. Furthermore, most end points are configured to use the same buffer adaptation processes, such as buffer threshold metrics or buffer algorithms, for each and every session. Because of these drawbacks, the early stages of real-time sessions often times suffer from the ill effects of poor jitter buffer operation.